package com.iwhalecloud.citybrain.flow.platform.manager.infrastructure.mapper;

import java.util.List;

import com.iwhalecloud.citybrain.flow.platform.manager.infrastructure.entities.FlowAppInfo;
import com.iwhalecloud.citybrain.flow.platform.manager.infrastructure.entities.FlowAppInfoExample;
import org.apache.ibatis.annotations.Param;


/**
 * @author lilh
 */
public interface FlowAppInfoDAO {
    long countByExample(FlowAppInfoExample example);

    int deleteByExample(FlowAppInfoExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(FlowAppInfo record);

    int insertSelective(FlowAppInfo record);

    List<FlowAppInfo> selectByExample(FlowAppInfoExample example);

    FlowAppInfo selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") FlowAppInfo record, @Param("example") FlowAppInfoExample example);

    int updateByExample(@Param("record") FlowAppInfo record, @Param("example") FlowAppInfoExample example);

    int updateByPrimaryKeySelective(FlowAppInfo record);

    int updateByPrimaryKey(FlowAppInfo record);

    /**
     * 根据流程实例ID获取对应的应用appCode
     *
     * @param processInstanceId
     * @return
     */
    List<FlowAppInfo> getAppInfoByProcessInstanceId(@Param("processInstanceId") String processInstanceId);
}